<html>
 <head>
  <link href="./leetcode-problem.css" rel="stylesheet" type="text/css">
 </head>
 <body>
  <div class="question_difficulty">
   难度：Medium
  </div>
  <div>
   <h1 class="question_title">
    31. Next Permutation
   </h1>
   <p>
    Implement
    <strong>
     next permutation
    </strong>
    , which rearranges numbers into the lexicographically next greater permutation of numbers.
   </p>
   <p>
    If such arrangement is not possible, it must rearrange it as the lowest possible order (ie, sorted in ascending order).
   </p>
   <p>
    The replacement must be
    <strong>
     <a href="http://en.wikipedia.org/wiki/In-place_algorithm" target="_blank">
      in-place
     </a>
    </strong>
    and use only constant&nbsp;extra memory.
   </p>
   <p>
    Here are some examples. Inputs are in the left-hand column and its corresponding outputs are in the right-hand column.
   </p>
   <p>
    <code>
     1,2,3
    </code>
    &rarr;
    <code>
     1,3,2
    </code>
    <br>
    <code>
     3,2,1
    </code>
    &rarr;
    <code>
     1,2,3
    </code>
    <br>
    <code>
     1,1,5
    </code>
    &rarr;
    <code>
     1,5,1
    </code>
   </p>
  </div>
  <div>
   <h1 class="question_title">
    31. 下一个排列
   </h1>
   <p>
    实现获取下一个排列的函数，算法需要将给定数字序列重新排列成字典序中下一个更大的排列。
   </p>
   <p>
    如果不存在下一个更大的排列，则将数字重新排列成最小的排列（即升序排列）。
   </p>
   <p>
    必须
    <strong>
     <a href="https://baike.baidu.com/item/%E5%8E%9F%E5%9C%B0%E7%AE%97%E6%B3%95" target="_blank">
      原地
     </a>
    </strong>
    修改，只允许使用额外常数空间。
   </p>
   <p>
    以下是一些例子，输入位于左侧列，其相应输出位于右侧列。
    <br>
    <code>
     1,2,3
    </code>
    &rarr;
    <code>
     1,3,2
    </code>
    <br>
    <code>
     3,2,1
    </code>
    &rarr;
    <code>
     1,2,3
    </code>
    <br>
    <code>
     1,1,5
    </code>
    &rarr;
    <code>
     1,5,1
    </code>
   </p>
  </div>
 </body>
</html>